function foo1(x) {
  console.log(arguments)
  return x
}
foo1(1, 2, 3, 4, 5)
// 返回的是1 打印的是Arguments(5) [1, 2, 3, 4, 5, callee: ƒ, Symbol(Symbol.iterator): ƒ]
// 2345没有接受，但是arguments里面还是有滴

// 不报错！不会执行？返回5，没有arguments
// function foo2(x) {
//   console.log(arguments)
//   return x
// }(1,2,3,4,5)

// (function foo3(x) {
//   console.log(arguments);
//   return x
// })(1,2,3,4,5)
// Arguments(5) [1, 2, 3, 4, 5, callee: ƒ, Symbol(Symbol.iterator): ƒ] window可以 nodejs不行

function foo() {
  bar.apply(null, arguments)
}
function bar(x) {
  console.log(arguments)
}
foo(1, 2, 3, 4, 5)
// [Arguments] { '0': 1, '1': 2, '2': 3, '3': 4, '4': 5 }
